/**
 * @file .
 * @author wangxiaowei0303@163.com
 */

#ifndef org_wxw0303_bishe_src_UniformNoise_UniformNoise_h_
#define org_wxw0303_bishe_src_UniformNoise_UniformNoise_h_

#include "../NoiseAlgorithm/NoiseAlgorithm.h"

class UniformNoise: public NoiseAlgorithm {
public:
    inline 
    UniformNoise();

    virtual
    ~UniformNoise();

    virtual void
    help(std::string &buf) const;

    virtual void
    set(const char *argname,const char *argval);

    virtual const char*
    get(const char *argname,std::string &buf) const;
    
    virtual void
    getSupportedArgs(std::vector<std::string> &arglist) const;

    virtual void
    process(cv::Mat &img);

private:
    double a;
    double b;
};

inline
UniformNoise::UniformNoise()  
{
    this->a = -48.990;
    this->b = -a;
}

#endif /* org_wxw0303_bishe_src_UniformNoise_UniformNoise_h_ */

